import { formatDate } from '@/utils/utilDate' // / 通用工具
/**
 * 格式化日期
 *
 * @export
 * @param {*} originVal 年-月-日 时-分-秒
 * @returns
 */
export function dateFormat (originVal) {
  if (originVal) {
    const dt = new Date(originVal)
    const y = dt.getFullYear()
    const m = (dt.getMonth() + 1 + '').padStart(2, '0')
    const d = (dt.getDate() + '').padStart(2, '0')
    const hh = (dt.getHours() + '').padStart(2, '0')
    const mm = (dt.getMinutes() + '').padStart(2, '0')
    const ss = (dt.getSeconds() + '').padStart(2, '0')

    return `${y}-${m}-${d} ${hh}:${mm}:${ss}`
  }
}

/**
 * @param {*} originVal 年-月-日
 */
export function dateFormatYear (originVal) {
  if (originVal) {
    const dt = new Date(originVal)
    const y = dt.getFullYear()
    const m = (dt.getMonth() + 1 + '').padStart(2, '0')
    const d = (dt.getDate() + '').padStart(2, '0')
    return `${y}-${m}-${d}`
  }
}

/**
 * @param {*} originVal 时-分-秒
 */
export function timeFormat(originVal) {
  if (originVal) {
    const dt = new Date(originVal)
    const hh = (dt.getHours() + '').padStart(2, '0')
    const mm = (dt.getMinutes() + '').padStart(2, '0')
    const ss = (dt.getSeconds() + '').padStart(2, '0')
    return `${hh}:${mm}:${ss}`
  }
}
// 全局使用-过滤器
export default {
  install(Vue) {
    Vue.filter('dateTime_f', dateFormat)
    Vue.filter('date_f', dateFormatYear)
    Vue.filter('time_f', timeFormat)
    Vue.filter('cdate_f', (time, fmt) => {
      if (time) {
        return formatDate(time, fmt)
      }
    })
  }
}
